From 8179247eaec09a3e2c6bec6d251af4b74ce09b08 Mon Sep 17 00:00:00 2001 From: Andrew Cooper Date: Tue, 4 Mar 2014 11:14:53 +0100 Subject: [PATCH] x86/crash: fix up declaration of do_nmi_crash() ... so it can correctly be annotated as noreturn. Move the declaration of nmi_crash() to be effectively private in crash.c Signed-off-by: Andrew Cooper Reviewed-by: Jan Beulich Reviewed-by: Tim Deegan Acked-by: Keir Fraser --- xen/arch/x86/crash.c | 3 ++- xen/include/asm-x86/processor.h | 2 +- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/xen/arch/x86/crash.c b/xen/arch/x86/crash.c index 01fd906fd9..ec586bd22f 100644 --- a/xen/arch/x86/crash.c +++ b/xen/arch/x86/crash.c @@ -36,7 +36,7 @@ static unsigned int crashing_cpu; static DEFINE_PER_CPU_READ_MOSTLY(bool_t, crash_save_done); /* This becomes the NMI handler for non-crashing CPUs, when Xen is crashing. */ -void __attribute__((noreturn)) do_nmi_crash(struct cpu_user_regs *regs) +void do_nmi_crash(struct cpu_user_regs *regs) { int cpu = smp_processor_id(); @@ -113,6 +113,7 @@ void __attribute__((noreturn)) do_nmi_crash(struct cpu_user_regs *regs) halt(); } +void nmi_crash(void); static void nmi_shootdown_cpus(void) { unsigned long msecs; diff --git a/xen/include/asm-x86/processor.h b/xen/include/asm-x86/processor.h index f1cccffc9f..4629b32073 100644 --- a/xen/include/asm-x86/processor.h +++ b/xen/include/asm-x86/processor.h @@ -530,7 +530,6 @@ void do_ ## _name(struct cpu_user_regs *regs) DECLARE_TRAP_HANDLER(divide_error); DECLARE_TRAP_HANDLER(debug); DECLARE_TRAP_HANDLER(nmi); -DECLARE_TRAP_HANDLER(nmi_crash); DECLARE_TRAP_HANDLER(int3); DECLARE_TRAP_HANDLER(overflow); DECLARE_TRAP_HANDLER(bounds); @@ -551,6 +550,7 @@ DECLARE_TRAP_HANDLER(spurious_interrupt_bug); void trap_nop(void); void enable_nmis(void); +void __attribute__((noreturn)) do_nmi_crash(struct cpu_user_regs *regs); void syscall_enter(void); void sysenter_entry(void); -- 2.30.2